#define CATCH_CONFIG_MAIN

#include "catch.hpp"
#include "ENDFtk/file/8.hpp"

// other includes
#include "ENDFtk/tree/File.hpp"

// convenience typedefs
using namespace njoy::ENDFtk;
std::string chunk8();
std::string chunk457();
void verifyChunk457( const file::Type< 8 >& );
std::string validSEND();
std::string validFEND();
std::string validMEND();
std::string validTEND();
std::string validHEAD();

SCENARIO( "Testing special case of file 8" ) {

  GIVEN( "valid data for a File 8" ) {

    WHEN( "a file::Type< 8 > is constructed using only mt457" ) {

      section::Type< 8, 457 >
      mt457( // zaid, awr, lis, liso
             95242., 239.9801, 2, 1,
             // decay energies
             { {{ 4.449622e+9, 6.311520e+7 }},
               { {{ 4.008322e+4, 4.128931e+3 }},
                 {{ 5.373671e+3, 3.660206e+2 }},
                 {{ 2.441003e+4, 6.191754e+2 }} } },
             // decay modes
             { 5., -1.,
               { { 4., 0., 5.637120e+6, 2.549510e+2, 4.590000e-3, 1.200000e-4 },
               { 3., 0., 4.860000e+4, 5.000000e+1, 9.954100e-1, 1.200000e-4 },
               { 6., 0., 1.884000e+8, 3.700000e+6, 1.60000e-10, 6.00000e-11 } } },
             // spectra
             { { 0.0, {{ 1., 0. }}, {{ 2.107044e+2, 1.576284e+1 }},
                 { { 3., {{ 4.863000e+4, 5.000000e+1 }},
                   {{ 1.420112e-6, 2.85306e-10 }}, 0.0,
                   {{ 0.0, 0.0 }}, {{ 7.010000e+5, 1.106180e-2 }}, {{ 0.0, 0.0 }},
                   {{ 3.315735e+5, 5.608008e+3 }} },
                 { 4., {{ 4.935000e+4, 2.000000e+1 }},
                   {{ 1.335690e-3, 5.409179e-5 }}, 0.0,
                   {{ 0.0, 0.0 }}, {{ 8.209999e-1, 0.000000e+0 }}, {{ 0.0, 0.0 }},
                   {{ 6.160000e-1, 8.999999e-3 }} } } },
               { 1.0, {{ 0.5, 0.25 }}, {{ 3.107044e+2, 4.576284e+1 }},
                 { 4., { 3 }, { 1 }, { 0.0, 5e+5, 7.3e+6 },
                   { 6.133200e-7, 6.133300e-7, 6.02040e-17 } } } });

      file::Type< 8 > mf8( std::move( mt457 ) );

      THEN( "the sections can be extracted and interrogated" ) {

        verifyChunk457( mf8 );
      } // THEN

      THEN( "it can be printed" ) {

        std::string buffer;
        auto output = std::back_inserter( buffer );
        mf8.print( output, 3580 );

        CHECK( buffer == chunk457() + validFEND() );
      } // THEN
    } // WHEN
  } // GIVEN

  GIVEN( "a string representation of File 8 with errors in the END records" ) {

    WHEN( "there is a SEND instead of FEND" ) {

      std::string string = chunk457() + validSEND();
      auto begin = string.begin();
      auto end = string.end();
      long lineNumber = 0;

      StructureDivision division( begin, end, lineNumber );

      THEN( "an exception is thrown" ) {

        CHECK_THROWS( file::Type< 8 >( division, begin, end, lineNumber ) );
      } // THEN
    } // WHEN

    WHEN( "there is a MEND instead of FEND" ) {

      std::string string = chunk457() + validMEND();
      auto begin = string.begin();
      auto end = string.end();
      long lineNumber = 0;

      StructureDivision division( begin, end, lineNumber );

      THEN( "an exception is thrown" ) {

        CHECK_THROWS( file::Type< 8 >( division, begin, end, lineNumber ) );
      } // THEN
    } // WHEN

    WHEN( "there is a TEND instead of FEND" ) {

      std::string string = chunk457() + validTEND();
      auto begin = string.begin();
      auto end = string.end();
      long lineNumber = 0;

      StructureDivision division( begin, end, lineNumber );

      THEN( "an exception is thrown" ) {

        CHECK_THROWS( file::Type< 8 >( division, begin, end, lineNumber ) );
      } // THEN
    } // WHEN

    WHEN( "there is a HEAD instead of FEND" ) {

      std::string string = chunk457() + validHEAD();
      auto begin = string.begin();
      auto end = string.end();
      long lineNumber = 0;

      StructureDivision division( begin, end, lineNumber );

      THEN( "an exception is thrown" ) {

        CHECK_THROWS( file::Type< 8 >( division, begin, end, lineNumber ) );
      } // THEN
    } // WHEN
  } // GIVEN

  std::string fileString = chunk8();

  GIVEN( "a string representation of of File 8" ) {

    WHEN( "a file::Type< 8 > is constructed from the string" ) {

      auto begin = fileString.begin();
      auto end = fileString.end();
      long lineNumber = 0;

      StructureDivision division( begin, end, lineNumber );
      file::Type< 8 > file( division, begin, end, lineNumber );

      THEN( "the sections can be extracted" ) {

        CHECK( file.hasMT( 457 ) );
        CHECK( not file.hasMT( 1 ) );
        CHECK( file.hasSection( 457 ) );
        CHECK( not file.hasSection( 1 ) );

        CHECK( 92235. == Approx( file.section( 457_c ).ZA() ) );
        CHECK( 92235. == Approx( file.MT( 457_c ).ZA() ) );
      }
    }

    WHEN( "a file::Type< 8 > is constructed from a syntaxTree" ) {

      auto begin = fileString.begin();
      auto start = fileString.begin();
      auto end = fileString.end();
      long lineNumber = 0;

      StructureDivision division( begin, end, lineNumber );

      tree::File< std::string::iterator >
        fileTree( asHead( division ), start, begin, end, lineNumber );

      THEN( "a file::Type< 8 > can be constructed" ) {

        CHECK_NOTHROW( fileTree.parse< 8 >( lineNumber ) );
      }
    }

    WHEN( "a file::Type< 8 > is constructed from the string twice" ) {

      std::string twice( fileString.begin(), fileString.end() - 81 );
      twice += fileString;
      auto begin = twice.begin();
      auto end = twice.end();
      long lineNumber = 0;
      StructureDivision division( begin, end, lineNumber );

      THEN( "an exception is thrown" ) {

        CHECK_THROWS( file::Type< 8 >( division, begin, end, lineNumber ) );
      }
    }
  } // GIVEN

  GIVEN( "a valid instance of file::Type< 8 >" ) {

    auto begin = fileString.begin();
    auto end = fileString.end();
    long lineNumber = 0;

    StructureDivision division( begin, end, lineNumber );
    file::Type< 8 > file( division, begin, end, lineNumber );

    THEN( "it can be printed" ) {

      std::string buffer;
      auto output = std::back_inserter( buffer );
      file.print( output, 3515 );
      CHECK( buffer == fileString );
    }
  } // GIVEN
} // SCENARIO

std::string chunk8() {

  return
    " 9.223500+4 2.330248+2          0          0          0          63515 8457     \n"
    " 2.22102+16 1.57788+13          0          0          6          03515 8457     \n"
    " 4.170051+4 1.312526+3 1.641191+5 1.625818+3 4.413323+6 1.648523+53515 8457     \n"
    " 3.500000+0-1.000000+0          0          0         12          23515 8457     \n"
    " 6.000000+0 0.000000+0 1.764000+8 4.600000+6 7.20000-11 2.10000-113515 8457     \n"
    " 4.000000+0 0.000000+0 4.678700+6 7.000000+2 1.000000+0 0.000000+03515 8457     \n"
    " 0.000000+0 0.000000+0          0          0          6         513515 8457     \n"
    " 1.000000+0 0.000000+0 1.486388+5 1.439557+3 0.000000+0 0.000000+03515 8457     \n"
    " 1.959000+4 2.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.099390-5 6.099390-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.000000+4 1.000000+4 0.000000+0 0.000000+0 6.000600+3 6.000600+33515 8457     \n"
    " 3.160000+4 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.700000-4 5.002889-5 0.000000+0 0.000000+03515 8457     \n"
    " 6.670000+2 6.670000+1 0.000000+0 0.000000+0 4.910000+2 4.910000+13515 8457     \n"
    " 3.470000+4 1.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.700000-4 3.718454-5 0.000000+0 0.000000+03515 8457     \n"
    " 8.390000+1 1.400000+0 0.000000+0 0.000000+0 6.340000+1 1.100000+03515 8457     \n"
    " 4.140000+4 3.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.000000-4 2.000225-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.990000+1 1.300000+0 0.000000+0 0.000000+0 3.770000+1 1.000000+03515 8457     \n"
    " 4.196000+4 1.500000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.986696-4 1.399542-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.500000+2 1.000000+2 0.000000+0 0.000000+0 3.292300+2 5.412000+13515 8457     \n"
    " 5.122000+4 1.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.400000-4 7.008252-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.740000+2 5.000000+0 0.000000+0 0.000000+0 2.000000+2 4.000000+03515 8457     \n"
    " 5.410000+4 1.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.767772-6 8.767772-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.100000+2 4.000000+0 0.000000+0 0.000000+0 1.538190+2 1.899000+03515 8457     \n"
    " 5.425000+4 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.530612-4 1.530612-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.800000+1 4.800000+0 0.000000+0 0.000000+0 3.547600+1 0.000000+03515 8457     \n"
    " 6.435000+4 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.274509-4 1.113338-4 0.000000+0 0.000000+03515 8457     \n"
    " 5.000000+1 4.000000+1 0.000000+0 0.000000+0 3.570000+1 2.040000+13515 8457     \n"
    " 7.270000+4 2.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.100000-3 1.105486-4 0.000000+0 0.000000+03515 8457     \n"
    " 5.080000+1 1.000000+0 0.000000+0 0.000000+0 3.710000+1 8.000000-13515 8457     \n"
    " 7.502000+4 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.000000-4 1.001798-4 0.000000+0 0.000000+03515 8457     \n"
    " 2.509999-1 0.000000+0 0.000000+0 0.000000+0 1.890000-1 3.000000-33515 8457     \n"
    " 7.619800+4 4.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.000000-5 1.003194-5 0.000000+0 0.000000+03515 8457     \n"
    " 9.609000+4 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.100000-4 1.203445-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.358000+1 0.000000+0 0.000000+0 0.000000+0 9.930000+0 1.400000-13515 8457     \n"
    " 1.091600+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.540000-2 5.231787-4 0.000000+0 0.000000+03515 8457     \n"
    " 9.330000-2 0.000000+0 0.000000+0 0.000000+0 7.050000-2 1.000000-33515 8457     \n"
    " 1.154500+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.000000-4 1.000449-4 0.000000+0 0.000000+03515 8457     \n"
    " 3.479999-1 0.000000+0 2.669999-1 4.000000-3 6.089999-2 8.999999-43515 8457     \n"
    " 1.203500+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.649006-4 2.649174-5 0.000000+0 0.000000+03515 8457     \n"
    " 5.040000+0 6.805387-3 2.560960-1 4.832000-3 3.497160+0 3.624000-23515 8457     \n"
    " 1.365500+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.200000-4 1.205985-5 0.000000+0 0.000000+03515 8457     \n"
    " 7.660000+0 0.000000+0 6.110000+0 9.000000-2 1.168000+0 1.700000-23515 8457     \n"
    " 1.407600+5 4.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.200000-3 2.012063-4 0.000000+0 0.000000+03515 8457     \n"
    " 2.179999-1 0.000000+0 1.696000-1 2.400000-3 3.640000-2 5.000000-43515 8457     \n"
    " 1.424000+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.000000-5 5.024937-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.480000+0 0.000000+0 2.529999-1 4.000000-3 1.627000+0 2.300000-23515 8457     \n"
    " 1.437600+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.096000-1 1.356914-3 0.000000+0 0.000000+03515 8457     \n"
    " 2.070000-1 0.000000+0 1.615000-1 2.300000-3 3.440000-2 5.000000-43515 8457     \n"
    " 1.509300+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.000000-4 1.003194-4 0.000000+0 0.000000+03515 8457     \n"
    " 5.760000+0 0.000000+0 4.600000+0 7.000000-2 8.769999-1 1.300000-23515 8457     \n"
    " 1.633300+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.080000-2 6.465786-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.526000-1 0.000000+0 1.198000-1 1.700000-3 2.480000-2 3.999999-43515 8457     \n"
    " 1.733000+5 1.000000+3          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.000000-5 5.000360-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.330000-1 3.000000-3 1.043000-1 2.099999-3 2.140000-2 5.000000-43515 8457     \n"
    " 1.826100+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.400000-3 2.028694-4 0.000000+0 0.000000+03515 8457     \n"
    " 3.360000+0 0.000000+0 2.690000+0 3.999999-2 5.099999-1 8.000000-33515 8457     \n"
    " 1.857150+5 5.000000+0          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.720000-1 7.597262-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.124000-1 0.000000+0 8.869999-2 1.300000-3 1.789999-2 3.000000-43515 8457     \n"
    " 1.949400+5 1.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.300000-3 1.181905-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.002000-1 0.000000+0 7.920000-2 1.100000-3 1.589000-2 2.300000-43515 8457     \n"
    " 1.989000+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.200000-4 6.014682-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.640000+0 0.000000+0 2.110000+0 2.999999-2 4.009999-1 6.000000-33515 8457     \n"
    " 2.021100+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.080000-2 2.272971-4 0.000000+0 0.000000+03515 8457     \n"
    " 2.530000+0 0.000000+0 2.020000+0 2.999999-2 3.829999-1 6.000000-33515 8457     \n"
    " 2.053110+5 1.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.010000-2 7.078142-4 0.000000+0 0.000000+03515 8457     \n"
    " 8.869999-2 0.000000+0 7.029999-2 1.000000-3 1.397000-2 1.999999-43515 8457     \n"
    " 2.152800+5 3.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.900000-4 3.013984-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.120000+0 0.000000+0 1.693000+0 2.400000-2 3.210000-1 4.999999-33515 8457     \n"
    " 2.213800+5 2.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.200000-3 1.007174-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.960000+0 0.000000+0 1.566000+0 2.200000-2 2.960000-1 4.999999-33515 8457     \n"
    " 2.287800+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.000000-5 7.000000-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.790000+0 0.000000+0 1.429000+0 2.000000-2 2.700000-1 4.000000-33515 8457     \n"
    " 2.335000+5 3.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.900000-4 5.008402-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.687000+0 0.000000+0 1.350000+0 1.899999-2 2.550000-1 4.000000-33515 8457     \n"
    " 2.408700+5 3.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.500000-4 6.046693-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.450000+0 2.200000-1 1.140000+0 2.099999-1 2.280000-1 1.300000-23515 8457     \n"
    " 2.468400+5 4.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.300000-4 3.046457-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.445000+0 0.000000+0 1.156000+0 1.700000-2 2.179999-1 3.000000-33515 8457     \n"
    " 2.664500+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.000000-5 2.000899-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.450000-1 0.000000+0 9.220000-2 1.300000-3 1.121000-1 1.600000-33515 8457     \n"
    " 2.751290+5 2.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.200000-4 5.026967-5 0.000000+0 0.000000+03515 8457     \n"
    " 8.399999-1 5.999999-2 6.499999-1 5.000000-2 1.450000-1 4.999999-33515 8457     \n"
    " 2.754300+5 1.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.000000-5 2.001224-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.020000+0 1.200000-1 8.100000-1 1.100000-1 1.570000-1 9.999999-33515 8457     \n"
    " 2.814200+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.000000-5 6.029925-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.005000+0 0.000000+0 8.040000-1 1.200000-2 1.515000-1 2.200000-33515 8457     \n"
    " 2.829200+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.000000-5 6.029925-6 0.000000+0 0.000000+03515 8457     \n"
    " 9.900000-1 0.000000+0 7.929999-1 1.200000-2 1.492999-1 2.099999-33515 8457     \n"
    " 2.895600+5 4.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.000000-5 7.034912-6 0.000000+0 0.000000+03515 8457     \n"
    " 9.290000-1 0.000000+0 7.429999-1 1.100000-2 1.400000-1 2.000000-33515 8457     \n"
    " 2.916500+5 3.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.000000-4 5.015974-5 0.000000+0 0.000000+03515 8457     \n"
    " 3.960000-2 0.000000+0 3.170000-2 5.000000-4 5.979999-3 9.000000-53515 8457     \n"
    " 3.017000+5 1.000000+2          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.000000-5 5.024937-6 0.000000+0 0.000000+03515 8457     \n"
    " 8.290000-1 0.000000+0 6.639999-1 9.999999-3 1.249000-1 1.800000-33515 8457     \n"
    " 3.171000+5 8.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.000000-5 1.004987-6 0.000000+0 0.000000+03515 8457     \n"
    " 7.229999-1 0.000000+0 5.790000-1 8.999999-3 1.088000-1 1.600000-33515 8457     \n"
    " 3.435000+5 2.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.000000-5 3.014962-6 0.000000+0 0.000000+03515 8457     \n"
    " 3.459000+5 3.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.000000-4 5.015974-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.720000-2 0.000000+0 2.190000-2 3.000000-4 4.030000-3 5.999999-53515 8457     \n"
    " 3.560300+5 5.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.000000-5 5.024937-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.550000-2 0.000000+0 2.060000-2 3.000000-4 3.770000-3 5.999999-53515 8457     \n"
    " 3.878200+5 3.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.000000-4 5.015974-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.129999-2 0.000000+0 1.717000-2 2.399999-4 3.120000-3 4.999999-53515 8457     \n"
    " 4.102900+5 4.000000+1          0          0         12          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.000000-5 3.014962-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.890000-2 0.000000+0 1.527000-2 2.200000-4 2.750000-3 3.999999-53515 8457     \n"
    " 4.287100+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.000000-5 1.004987-6 0.000000+0 0.000000+03515 8457     \n"
    " 4.484000+5 6.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.000000-5 1.004987-6 0.000000+0 0.000000+03515 8457     \n"
    " 0.000000+0 4.000000+0          0          0          6         213515 8457     \n"
    " 1.000000+0 0.000000+0 4.339459+6 1.648284+5 0.000000+0 0.000000+03515 8457     \n"
    " 3.975854+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.000000-5 1.000000-6 0.000000+0 0.000000+03515 8457     \n"
    " 4.077101+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.000000-4 2.000000-5 0.000000+0 0.000000+03515 8457     \n"
    " 4.150000+6 5.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.000000-3 2.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.214700+6 1.900000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.700000-2 6.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.219000+6 6.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.000000-3 9.000000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.219928+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.700000-4 2.000000-5 0.000000+0 0.000000+03515 8457     \n"
    " 4.271000+6 5.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.000000-3 4.000000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.279693+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.300000-4 1.100000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.287360+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.000000-3 1.000000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.295000+6 4.295000+5          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.000000-5 9.000000-6 0.000000+0 0.000000+03515 8457     \n"
    " 4.325795+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.400000-2 5.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.328547+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.100000-3 4.000000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.362362+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.400000-3 7.000000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.366100+6 2.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.700000-1 2.000000-2 0.000000+0 0.000000+03515 8457     \n"
    " 4.381431+6 6.880851+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.550000-3 1.550000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.397800+6 1.300000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.500000-1 3.000000-2 0.000000+0 0.000000+03515 8457     \n"
    " 4.414000+6 4.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.100000-2 2.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.435000+6 5.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.000000-3 7.000000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.502000+6 2.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.700000-2 2.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.556000+6 2.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.200000-2 3.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.596400+6 1.300000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.000000-2 5.000000-3 0.000000+0 0.000000+03515 8457     \n"
    " 0.000000+0 6.000000+0          0          0          6          03515 8457     \n"
    " 1.000000+0 0.000000+0 1.194840-2 3.501410-3 0.000000+0 0.000000+03515 8457     \n"
    " 0.000000+0 5.000000+0          0          0          6          03515 8457     \n"
    " 1.000000+0 0.000000+0 2.485440-4 8.895330-5 0.000000+0 0.000000+03515 8457     \n"
    " 0.000000+0 8.000000+0          0          0          6        2753515 8457     \n"
    " 1.000000+0 0.000000+0 4.170051+4 1.312526+3 0.000000+0 0.000000+03515 8457     \n"
    " 4.937612+2 2.127332+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.203093-1 1.292212-2 0.000000+0 0.000000+03515 8457     \n"
    " 1.524159+3 7.338183+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.857388-2 5.513789-3 0.000000+0 0.000000+03515 8457     \n"
    " 2.387489+3 7.544840+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.220610-1 2.509419-2 0.000000+0 0.000000+03515 8457     \n"
    " 5.799095+3 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.009999-5 2.673895-5 0.000000+0 0.000000+03515 8457     \n"
    " 9.842492+3 4.476391+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.923416-1 8.805220-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.069910+4 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.784000-5 6.904122-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.112790+4 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.347000-2 2.594362-2 0.000000+0 0.000000+03515 8457     \n"
    " 1.296323+4 3.522304+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.721805-2 2.724669-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.422790+4 1.000013+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.345800-2 2.392374-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.440770+4 3.000000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.830000-1 3.660000-2 0.000000+0 0.000000+03515 8457     \n"
    " 1.611998+4 4.509654+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.158554-2 3.350710-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.826050+4 3.999999-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.879999-2 9.759999-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.941260+4 0.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.220000-2 2.439999-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.957130+4 0.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.830000-3 3.660000-4 0.000000+0 0.000000+03515 8457     \n"
    " 2.092790+4 3.000004+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.131000-2 7.546813-3 0.000000+0 0.000000+03515 8457     \n"
    " 2.148790+4 1.500008+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.971000-1 3.942000-2 0.000000+0 0.000000+03515 8457     \n"
    " 2.641770+4 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.238899-2 6.958809-3 0.000000+0 0.000000+03515 8457     \n"
    " 2.689910+4 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.332000-4 7.447295-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.951770+4 1.000005+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.661000-3 5.796506-4 0.000000+0 0.000000+03515 8457     \n"
    " 3.027050+4 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.984000-3 1.859909-3 0.000000+0 0.000000+03515 8457     \n"
    " 3.074790+4 1.000013+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.800000-2 1.408232-2 0.000000+0 0.000000+03515 8457     \n"
    " 3.110909+4 4.001012+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.731199-4 3.453066-5 0.000000+0 0.000000+03515 8457     \n"
    " 3.142260+4 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.339600-3 4.163661-4 0.000000+0 0.000000+03515 8457     \n"
    " 3.158130+4 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.252500-4 7.001080-5 0.000000+0 0.000000+03515 8457     \n"
    " 3.274909+4 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.265000-5 1.286944-6 0.000000+0 0.000000+03515 8457     \n"
    " 3.337050+4 1.000008+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.509600-3 1.539078-4 0.000000+0 0.000000+03515 8457     \n"
    " 3.362790+4 1.000013+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.348649-3 1.348649-3 0.000000+0 0.000000+03515 8457     \n"
    " 3.377790+4 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.429999-3 5.429999-3 0.000000+0 0.000000+03515 8457     \n"
    " 3.410909+4 2.002024+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.770040-2 3.340170-4 0.000000+0 0.000000+03515 8457     \n"
    " 3.452260+4 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.574200-4 3.640483-5 0.000000+0 0.000000+03515 8457     \n"
    " 3.468130+4 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.955999-5 7.078269-6 0.000000+0 0.000000+03515 8457     \n"
    " 3.621770+4 3.000002+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.724000-3 1.817630-3 0.000000+0 0.000000+03515 8457     \n"
    " 3.677770+4 1.500003+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.400000-2 1.080000-2 0.000000+0 0.000000+03515 8457     \n"
    " 4.007050+4 3.000003+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.260000-4 4.845097-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.063050+4 1.500005+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.431000-2 2.862000-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.122260+4 3.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.722000-4 1.149010-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.127909+4 2.002024+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.679999-3 4.648550-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.138130+4 3.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.330000-5 2.222073-5 0.000000+0 0.000000+03515 8457     \n"
    " 4.178260+4 1.500000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.240000-3 6.480000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.194130+4 1.500000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.400000-4 1.080000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.387790+4 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.549999-3 9.099999-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.603770+4 1.000005+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.866600-2 3.862524-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.891770+4 1.000005+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.700000-4 3.700000-4 0.000000+0 0.000000+03515 8457     \n"
    " 4.906770+4 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.408500-3 1.408500-3 0.000000+0 0.000000+03515 8457     \n"
    " 4.989050+4 1.000008+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.991200-3 1.032316-3 0.000000+0 0.000000+03515 8457     \n"
    " 5.104260+4 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.108400-3 2.293779-4 0.000000+0 0.000000+03515 8457     \n"
    " 5.120130+4 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.829200-4 3.782836-5 0.000000+0 0.000000+03515 8457     \n"
    " 5.222790+4 2.000006+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.080999-2 4.194699-3 0.000000+0 0.000000+03515 8457     \n"
    " 5.277050+4 1.000008+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.878999-5 9.878999-5 0.000000+0 0.000000+03515 8457     \n"
    " 5.292050+4 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.174999-4 5.174999-4 0.000000+0 0.000000+03515 8457     \n"
    " 5.367910+4 2.002024+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.085840-3 1.160091-4 0.000000+0 0.000000+03515 8457     \n"
    " 5.392260+4 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.201500-5 2.201500-5 0.000000+0 0.000000+03515 8457     \n"
    " 5.408130+4 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.626000-6 3.626000-6 0.000000+0 0.000000+03515 8457     \n"
    " 5.454790+4 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.134000-4 1.901935-5 0.000000+0 0.000000+03515 8457     \n"
    " 5.916770+4 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.235000-3 2.470000-4 0.000000+0 0.000000+03515 8457     \n"
    " 6.302050+4 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.250000-4 6.500000-5 0.000000+0 0.000000+03515 8457     \n"
    " 6.364910+4 1.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.258000-6 5.216897-6 0.000000+0 0.000000+03515 8457     \n"
    " 6.417260+4 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.800000-5 1.560000-5 0.000000+0 0.000000+03515 8457     \n"
    " 6.433130+4 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.300000-5 2.600000-6 0.000000+0 0.000000+03515 8457     \n"
    " 6.751770+4 2.000002+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.122000-2 1.148857-3 0.000000+0 0.000000+03515 8457     \n"
    " 6.983770+4 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.772000-5 4.647326-6 0.000000+0 0.000000+03515 8457     \n"
    " 7.137050+4 2.000004+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.003000-3 3.089302-4 0.000000+0 0.000000+03515 8457     \n"
    " 7.185650+4 5.437880+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.321718-3 1.768084-4 0.000000+0 0.000000+03515 8457     \n"
    " 7.252260+4 2.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.687999-4 6.849747-5 0.000000+0 0.000000+03515 8457     \n"
    " 7.268130+4 2.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.105500-4 1.132586-5 0.000000+0 0.000000+03515 8457     \n"
    " 7.295910+4 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.146000-3 5.624099-4 0.000000+0 0.000000+03515 8457     \n"
    " 7.369050+4 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.272000-6 1.218973-6 0.000000+0 0.000000+03515 8457     \n"
    " 7.484260+4 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.638000-6 2.745420-7 0.000000+0 0.000000+03515 8457     \n"
    " 7.500130+4 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.820000-7 4.727147-8 0.000000+0 0.000000+03515 8457     \n"
    " 7.561790+4 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.036300-3 1.201793-3 0.000000+0 0.000000+03515 8457     \n"
    " 7.606409+4 5.080354+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.073639-2 1.003519-3 0.000000+0 0.000000+03515 8457     \n"
    " 8.528910+4 1.004042+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.989600-4 1.164677-5 0.000000+0 0.000000+03515 8457     \n"
    " 8.721623+4 3.775481+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.399327-3 6.131373-5 0.000000+0 0.000000+03515 8457     \n"
    " 8.868791+4 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.085700-3 3.996995-5 0.000000+0 0.000000+03515 8457     \n"
    " 8.924909+4 2.002024+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.861999-4 1.275337-4 0.000000+0 0.000000+03515 8457     \n"
    " 9.090770+4 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.484300-3 3.305509-4 0.000000+0 0.000000+03515 8457     \n"
    " 9.245910+4 2.002024+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.181600-2 5.619482-4 0.000000+0 0.000000+03515 8457     \n"
    " 9.476050+4 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.652100-4 8.853953-5 0.000000+0 0.000000+03515 8457     \n"
    " 9.497790+4 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.827000-5 6.098719-6 0.000000+0 0.000000+03515 8457     \n"
    " 9.566010+4 1.004042+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.522029-3 7.061162-5 0.000000+0 0.000000+03515 8457     \n"
    " 9.591259+4 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.482390-4 1.971553-5 0.000000+0 0.000000+03515 8457     \n"
    " 9.607130+4 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.457000-5 3.269627-6 0.000000+0 0.000000+03515 8457     \n"
    " 9.987790+4 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.263999-4 9.314192-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.025823+5 4.312696+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.045445-4 8.710380-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.039777+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.631860-4 9.674922-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.056291+5 3.001350+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.909699-4 5.149923-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.078305+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.929999-5 2.589369-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.089826+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.576960-5 5.834149-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.091413+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.802800-6 1.058348-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.102677+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.425000-6 1.477007-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.117291+5 2.002024+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.879200-3 1.599176-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.141205+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.164000-6 3.885916-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.151677+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.543999-4 2.589045-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.152726+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.655000-7 8.862566-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.154313+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.730999-8 1.579217-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.160779+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.401600-4 1.423286-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.190205+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.815999-5 6.935571-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.191291+5 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.000300-4 2.000600-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.201726+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.521600-5 1.548710-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.202879+5 4.000312+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.008000-5 7.406057-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.203313+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.528000-6 2.573323-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.219279+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.134999-5 8.256058-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.232879+5 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.770240-3 7.198515-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.238491+5 3.001350+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.915000-4 6.783758-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.304579+5 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.015999-4 8.859274-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.312191+5 3.001350+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.549999-4 1.719241-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.313677+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.371999-5 3.422643-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.352205+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.988000-6 9.128767-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.355777+5 4.000113+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.933800-5 1.791579-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.363726+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.128800-6 2.160348-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.365313+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.127999-7 4.191752-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.371891+5 4.001012+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.126800-4 3.635134-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.372177+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.230000-5 2.268287-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.385777+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.129679-4 1.734171-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.394305+5 4.000200+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.103999-6 4.750211-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.405826+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.168200-6 1.082805-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.407413+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.107600-7 1.952009-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.410705+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.979999-6 6.069637-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.422226+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.335000-6 1.356483-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.423813+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.235000-7 2.273252-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.424305+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.411200-4 4.440994-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.428579+5 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.259840-3 2.588490-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.435826+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.512879-5 1.026859-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.437413+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.951680-6 1.883632-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.457477+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.688000-4 2.130303-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.496005+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.503999-5 5.684132-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.507526+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.065600-5 1.344872-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.509113+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.064000-6 2.607949-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.528279+5 1.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.284000-6 1.070497-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.567991+5 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.532000-6 1.846477-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.581477+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.048000-4 5.996122-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.620005+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.036560-5 1.552886-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.621379+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.734000-3 1.069790-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.631526+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.849120-5 3.462770-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.633113+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.357880-6 6.638711-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.652429+5 5.024938+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.023880-2 2.189523-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.654781+5 8.999999-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.379999-4 4.175732-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.657791+5 1.000041+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.670000-5 1.794579-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.681177+5 1.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.090000-7 2.576031-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.717691+5 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.824000-5 4.901233-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.719705+5 1.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.160000-8 6.802871-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.731226+5 1.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.878000-8 1.565676-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.732691+5 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.757999-5 4.835633-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.732813+5 1.000000+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.426000-9 2.856113-9 0.000000+0 0.000000+03515 8457     \n"
    " 1.744679+5 1.001249+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.001070-4 2.372058-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.774277+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.168399-4 2.561367-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.784279+5 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.684200-4 2.425016-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.799091+5 4.001012+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.200999-5 5.283351-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.805327+5 5.008992+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.476759-3 4.753965-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.812805+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.111799-4 6.848189-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.816379+5 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.136399-3 1.085245-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.819991+5 3.001350+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.268000-5 1.602592-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.824326+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.635000-5 1.616109-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.825913+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.110200-6 3.131608-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.843855+5 5.015975+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.532239-4 1.261084-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.848389+5 1.001249+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.998969-4 1.407750-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.855376+5 5.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.504360-4 3.037641-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.856963+5 5.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.757040-5 5.425991-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.897577+5 1.000450+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.412900-5 5.897405-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.920491+5 1.000041+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.319999-5 3.373814-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.936105+5 1.000800+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.369300-6 1.523425-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.937177+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.044599-5 5.821908-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.947626+5 1.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.467900-6 3.732831-8 0.000000+0 0.000000+03515 8457     \n"
    " 1.948079+5 3.000417+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.309000-5 9.782943-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.949213+5 1.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.696399-7 6.314853-9 0.000000+0 0.000000+03515 8457     \n"
    " 1.969277+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.936000-4 2.518741-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.975705+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.079400-5 1.554875-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.987226+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.553600-6 3.676411-7 0.000000+0 0.000000+03515 8457     \n"
    " 1.988813+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.956000-7 7.133149-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.001287+5 1.000450+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.683360-4 3.454146-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.007805+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.645999-4 7.047958-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.009079+5 2.000625+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.552000-4 3.041014-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.019326+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.274800-5 1.639743-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.020913+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.218240-5 3.091864-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.039815+5 1.000800+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.453890-5 9.056176-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.051336+5 1.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.027050-5 2.089130-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.052923+5 1.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.888770-6 4.019541-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.074491+5 8.000506+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.790000-6 5.888067-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.083079+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.890000-5 3.780000-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.100977+5 3.000150+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.233000-5 2.342589-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.130279+5 3.000417+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.394999-5 1.282399-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.139505+5 3.000267+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.945000-6 6.239618-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.151026+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.412300-6 1.481781-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.152613+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.737600-7 2.874022-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.161977+5 2.000225+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.543999-5 7.270790-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.200505+5 2.000400+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.279999-5 1.947199-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.203979+5 3.000417+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.710000-4 1.688576-5 0.000000+0 0.000000+03515 8457     \n"
    " 2.212026+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.399999-6 4.609468-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.213613+5 2.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.047600-6 8.929947-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.235977+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.543000-6 9.086000-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.263679+5 4.000312+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.155400-4 6.828956-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.274505+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.212400-6 2.424799-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.283177+5 3.000150+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.777700-5 3.081225-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.286026+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.870000-7 5.740000-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.287613+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.572000-8 1.114400-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.321705+5 3.000267+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.741499-6 8.215858-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.333226+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.122300-6 1.946046-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.334813+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.177900-7 3.774813-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.356877+5 3.000150+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.147500-5 3.696182-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.362491+5 3.001350+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.760000-6 1.105033-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.395405+5 3.000267+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.110000-5 1.001681-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.406926+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.610000-6 2.422367-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.408513+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.024999-7 5.520453-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.416577+5 4.000113+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.782499-5 1.654637-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.455105+5 4.000200+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.414699-6 4.391831-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.459779+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.725999-6 2.245062-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.463791+5 5.000810+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.030000-6 1.045948-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.466626+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.754300-6 1.042616-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.468213+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.407900-7 2.016112-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.546569+5 5.000000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.539999-5 7.738928-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.549579+5 1.000013+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.099000-5 3.218956-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.609479+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.090000-6 9.230210-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.612677+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.818000-6 6.070144-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.624479+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.957999-6 9.090424-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.651205+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.865999-7 1.624326-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.662726+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.098000-7 3.666068-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.664313+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.878000-8 6.269997-9 0.000000+0 0.000000+03515 8457     \n"
    " 2.690879+5 4.000312+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.800000-6 9.947884-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.699467+5 3.000000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.846000-5 1.858790-6 0.000000+0 0.000000+03515 8457     \n"
    " 2.702477+5 1.000005+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.653000-6 7.688588-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.711779+5 3.000417+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.392000-6 3.021078-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.737995+5 3.999999-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.934800-6 4.944547-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.741005+5 1.000008+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.069999-7 2.051316-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.749516+5 0.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.159600-6 1.178629-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.751103+5 0.000000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.194400-7 2.260233-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.752526+5 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.673000-7 4.868725-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.754113+5 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.220000-8 9.442123-9 0.000000+0 0.000000+03515 8457     \n"
    " 2.762377+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.184000-6 2.215300-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.777377+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.154000-6 2.185432-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.781691+5 3.001350+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.868000-6 8.665767-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.800905+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.825999-7 5.915006-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.812279+5 1.000013+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.244999-6 6.340348-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.812426+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.380000-7 1.407495-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.814013+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.675999-8 2.721945-9 0.000000+0 0.000000+03515 8457     \n"
    " 2.815905+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.736000-7 5.825488-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.827426+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.356000-7 1.383735-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.829013+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.634000-8 2.680249-9 0.000000+0 0.000000+03515 8457     \n"
    " 2.843777+5 4.000113+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.351999-6 2.389502-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.864677+5 3.000150+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.731999-7 7.232273-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.882305+5 4.000200+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.278999-7 6.375593-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.893826+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.484000-7 1.506113-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.895413+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.884000-8 2.928657-9 0.000000+0 0.000000+03515 8457     \n"
    " 2.903205+5 3.000267+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.516000-7 1.916144-8 0.000000+0 0.000000+03515 8457     \n"
    " 2.914726+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.524000-8 4.449563-9 0.000000+0 0.000000+03515 8457     \n"
    " 2.916313+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.568000-9 8.28745-10 0.000000+0 0.000000+03515 8457     \n"
    " 2.965177+5 1.000005+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.500000-6 1.528070-7 0.000000+0 0.000000+03515 8457     \n"
    " 2.966279+5 8.000156+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.088000-6 1.105070-7 0.000000+0 0.000000+03515 8457     \n"
    " 3.003705+5 1.000008+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.000000-7 4.064480-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.006391+5 4.001012+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.581000-7 4.650915-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.015226+5 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 9.449999-8 9.614859-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.016813+5 1.000000+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.840000-8 1.873354-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.119177+5 8.000056+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.610000-7 2.653341-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.157705+5 8.000100+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.970000-8 7.075783-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.169226+5 8.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.650000-8 1.675507-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.170813+5 8.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.200000-9 3.25459-10 0.000000+0 0.000000+03515 8457     \n"
    " 3.254279+5 3.000417+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.612000-6 2.035635-7 0.000000+0 0.000000+03515 8457     \n"
    " 3.355579+5 5.000250+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.885000-7 1.918008-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.407177+5 3.000150+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.856000-7 4.867718-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.445705+5 3.000267+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.020000-7 1.289041-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.457226+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.379999-8 3.006138-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.458813+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.460000-9 5.62931-10 0.000000+0 0.000000+03515 8457     \n"
    " 3.508477+5 5.000090+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.515000-8 4.583839-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.547005+5 5.000160+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.195000-8 1.217500-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.558526+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.785000-9 2.82732-10 0.000000+0 0.000000+03515 8457     \n"
    " 3.560113+5 5.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.23000-10 5.30932-11 0.000000+0 0.000000+03515 8457     \n"
    " 3.673479+5 3.000417+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.248000-6 1.577712-7 0.000000+0 0.000000+03515 8457     \n"
    " 3.826377+5 3.000150+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.980000-7 3.762715-8 0.000000+0 0.000000+03515 8457     \n"
    " 3.864905+5 3.000267+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.880000-8 9.954067-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.876426+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.840000-8 2.324275-9 0.000000+0 0.000000+03515 8457     \n"
    " 3.878013+5 3.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.464000-9 4.37484-10 0.000000+0 0.000000+03515 8457     \n"
    " 3.898179+5 4.000312+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 8.250000-8 8.377537-9 0.000000+0 0.000000+03515 8457     \n"
    " 4.051077+5 4.000113+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.971000-8 2.003419-9 0.000000+0 0.000000+03515 8457     \n"
    " 4.089605+5 4.000200+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.223000-9 5.30236-10 0.000000+0 0.000000+03515 8457     \n"
    " 4.101126+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.221000-9 1.24022-10 0.000000+0 0.000000+03515 8457     \n"
    " 4.102713+5 4.000000+1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.29800-10 2.33291-11 0.000000+0 0.000000+03515 8457     \n"
    " 0.000000+0 9.000000+0          0          0          6         153515 8457     \n"
    " 1.000000+0 0.000000+0 1.548031+4 7.556178+2 0.000000+0 0.000000+03515 8457     \n"
    " 3.065349+3 3.965345+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 4.553829-2 5.930909-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.296011+4 1.325288+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.184198-1 1.204844-2 0.000000+0 0.000000+03515 8457     \n"
    " 1.319749+4 8.205491+2          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.522813-2 9.741830-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.612543+4 1.434188+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.308145-1 1.150638-2 0.000000+0 0.000000+03515 8457     \n"
    " 1.918505+4 1.697594+3          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.883229-2 2.554897-3 0.000000+0 0.000000+03515 8457     \n"
    " 8.995704+4 2.000000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.289313-2 3.518737-3 0.000000+0 0.000000+03515 8457     \n"
    " 9.334738+4 2.500000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 5.631759-2 6.024565-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.048165+5 6.900000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.747349-3 7.217965-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.056015+5 5.300000-1          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.324711-2 1.417108-3 0.000000+0 0.000000+03515 8457     \n"
    " 1.061564+5 4.200000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.274561-4 2.433208-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.063149+5 4.100000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 2.627650-4 2.810925-5 0.000000+0 0.000000+03515 8457     \n"
    " 1.084812+5 6.700000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 1.690858-3 1.808793-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.086809+5 5.500000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 3.397445-3 3.634411-4 0.000000+0 0.000000+03515 8457     \n"
    " 1.089342+5 5.400000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 6.575589-5 7.034225-6 0.000000+0 0.000000+03515 8457     \n"
    " 1.089722+5 5.400000+0          0          0          6          03515 8457     \n"
    " 4.000000+0 0.000000+0 7.612251-5 8.143193-6 0.000000+0 0.000000+03515 8457     \n"
    "                                                                  3515 8  0     \n"
    "                                                                  3515 0  0     \n";
}

std::string chunk457() {
  return
    " 9.524200+4 2.399801+2          2          1          0          23580 8457     \n"
    " 4.449622+9 6.311520+7          0          0          6          03580 8457     \n"
    " 4.008322+4 4.128931+3 5.373671+3 3.660206+2 2.441003+4 6.191754+23580 8457     \n"
    " 5.000000+0-1.000000+0          0          0         18          33580 8457     \n"
    " 4.000000+0 0.000000+0 5.637120+6 2.549510+2 4.590000-3 1.200000-43580 8457     \n"
    " 3.000000+0 0.000000+0 4.860000+4 5.000000+1 9.954100-1 1.200000-43580 8457     \n"
    " 6.000000+0 0.000000+0 1.884000+8 3.700000+6 1.60000-10 6.00000-113580 8457     \n"
    " 0.000000+0 0.000000+0          0          0          6          23580 8457     \n"
    " 1.000000+0 0.000000+0 2.107044+2 1.576284+1 0.000000+0 0.000000+03580 8457     \n"
    " 4.863000+4 5.000000+1          0          0         12          03580 8457     \n"
    " 3.000000+0 0.000000+0 1.420112-6 2.85306-10 0.000000+0 0.000000+03580 8457     \n"
    " 7.010000+5 1.106180-2 0.000000+0 0.000000+0 3.315735+5 5.608008+33580 8457     \n"
    " 4.935000+4 2.000000+1          0          0         12          03580 8457     \n"
    " 4.000000+0 0.000000+0 1.335690-3 5.409179-5 0.000000+0 0.000000+03580 8457     \n"
    " 8.209999-1 0.000000+0 0.000000+0 0.000000+0 6.160000-1 8.999999-33580 8457     \n"
    " 0.000000+0 1.000000+0          1          0          6          03580 8457     \n"
    " 0.000000+0 0.000000+0 3.107044+2 4.576284+1 5.000000-1 2.500000-13580 8457     \n"
    " 4.000000+0 0.000000+0          0          0          1          33580 8457     \n"
    "          3          1                                            3580 8457     \n"
    " 0.000000+0 6.133200-7 5.000000+5 6.133300-7 7.300000+6 6.02040-173580 8457     \n"
    "                                                                  3580 8  0     \n";
}

void verifyChunk457( const file::Type< 8 >& chunk ) {

  CHECK( 8 == chunk.MF() );
  CHECK( 8 == chunk.fileNumber() );

  CHECK( chunk.hasMT( 457 ) );
  CHECK( not chunk.hasMT( 1 ) );
  CHECK( chunk.hasSection( 457 ) );
  CHECK( not chunk.hasSection( 1 ) );

  CHECK_NOTHROW( chunk.MT( 457_c ) );
  CHECK_NOTHROW( chunk.section( 457_c ) );

  CHECK( 95242. == Approx( chunk.MT( 457_c ).ZA() ) );
  CHECK( 2 == chunk.MT( 457_c ).LIS() );
  CHECK( 1 == chunk.MT( 457_c ).LISO() );
  CHECK( 20 == chunk.MT( 457_c ).NC() );
}

std::string validSEND() {
  return
    "                                                                  3580 8  0     \n";
}

std::string validFEND() {
  return
    "                                                                  3580 0  0     \n";
}

std::string validMEND() {
  return
    "                                                                     0 0  0     \n";
}

std::string validTEND() {
  return
    "                                                                    -1 0  0     \n";
}

std::string validHEAD() {
  return
    " 9.524200+4 2.399801+2          2          1          0          23580 8457     \n";
}
